home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / MacTech® Magazine / Volume 02 - 1986 / 02.08 Aug 86.sit / 02.08 Aug 86 / pascal / TML source / keytrans.asm < prev    next >
MacBinary  |  1986-07-13  |  2.1 KB  |  [TEXT/EDIT]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Sun Jul 13 18:24:10 1986, modified Sun Jul 13 18:24:10 1986, creator Macintosh Edit, type ASCII, 1611 bytes "keytrans.asm" , at 0x6cb 348 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[EDIT]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 6b 65 79 74 72 61 | 6e 73 2e 61 73 6d 00 00 |..keytra|ns.asm..|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 45 44 49 | 54 01 00 00 00 00 00 00 |.TEXTEDI|T.......|
|00000050| 00 00 00 00 00 06 4b 00 | 00 01 5c 9b 3d db 0a 9b |......K.|..\.=...|
|00000060| 3d db 0a 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |=.......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 6b f5 00 00 |........|....k...|
|00000080| 3b 20 45 58 41 4d 50 4c | 45 20 41 53 53 45 4d 42 |; EXAMPL|E ASSEMB|
|00000090| 4c 59 20 53 55 42 52 4f | 55 54 49 4e 45 0d 3b 20 |LY SUBRO|UTINE.; |
|000000a0| 6b 65 79 20 74 65 73 74 | 20 74 68 69 6e 67 0d 3b |key test| thing.;|
|000000b0| 20 56 45 52 53 49 4f 4e | 20 31 31 20 4a 75 6c 79 | VERSION| 11 July|
|000000c0| 20 31 39 38 36 0d 3b 20 | 28 43 29 20 43 6f 70 79 | 1986.; |(C) Copy|
|000000d0| 72 69 67 68 74 20 31 39 | 38 36 20 4d 61 63 54 75 |right 19|86 MacTu|
|000000e0| 74 6f 72 20 0d 0d 49 4e | 43 4c 55 44 45 20 4d 41 |tor ..IN|CLUDE MA|
|000000f0| 43 54 52 41 50 53 2e 44 | 0d 20 20 20 0d 3b 20 20 |CTRAPS.D|. .; |
|00000100| 20 20 20 20 44 45 43 4c | 41 52 45 20 4c 41 42 45 | DECL|ARE LABE|
|00000110| 4c 53 20 45 58 54 45 52 | 4e 41 4c 0d 0d 58 44 45 |LS EXTER|NAL..XDE|
|00000120| 46 09 6b 65 79 54 72 61 | 6e 73 20 20 20 20 20 20 |F.keyTra|ns |
|00000130| 20 20 20 20 20 3b 20 72 | 65 71 75 69 72 65 64 20 | ; r|equired |
|00000140| 66 6f 72 20 6c 69 6e 6b | 65 72 20 0d 20 20 20 20 |for link|er . |
|00000150| 0d 3b 20 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 20 73 |.; =====|====== s|
|00000160| 79 73 74 65 6d 20 67 6c | 6f 62 61 6c 73 20 3d 3d |ystem gl|obals ==|
|00000170| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 0d 0d 4b 65 79 |========|===..Key|
|00000180| 31 54 72 61 6e 73 20 09 | 65 71 75 20 24 32 39 45 |1Trans .|equ $29E|
|00000190| 3b 20 20 20 20 7b 20 4c | 6f 77 20 4d 65 6d 6f 72 |; { L|ow Memor|
|000001a0| 79 20 47 6c 6f 62 61 6c | 73 20 7d 0d 4b 65 79 32 |y Global|s }.Key2|
|000001b0| 54 72 61 6e 73 20 09 65 | 71 75 20 24 32 41 32 3b |Trans .e|qu $2A2;|
|000001c0| 0d 0d 3b 20 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 20 |..; ====|======= |
|000001d0| 6b 65 79 20 74 72 61 6e | 73 6c 61 74 69 6f 6e 20 |key tran|slation |
|000001e0| 72 6f 75 74 69 6e 65 20 | 3d 3d 3d 3d 3d 3d 0d 0d |routine |======..|
|000001f0| 4b 65 79 54 72 61 6e 73 | 3a 0d 20 0d 3b 20 6b 65 |KeyTrans|:. .; ke|
|00000200| 79 20 63 6f 64 65 20 28 | 32 20 62 79 74 65 73 29 |y code (|2 bytes)|
|00000210| 20 61 6e 64 20 6d 6f 64 | 69 66 69 65 72 73 20 28 | and mod|ifiers (|
|00000220| 32 20 62 79 74 65 73 29 | 20 70 61 73 73 65 64 20 |2 bytes)| passed |
|00000230| 0d 3b 20 61 73 63 69 69 | 20 63 68 61 72 20 63 6f |.; ascii| char co|
|00000240| 64 65 20 72 65 74 75 72 | 6e 65 64 20 28 32 20 62 |de retur|ned (2 b|
|00000250| 79 74 65 73 29 0d 0d 6c | 69 6e 6b 09 61 36 2c 20 |ytes)..l|ink.a6, |
|00000260| 23 2d 34 0d 6d 6f 76 65 | 6d 2e 6c 09 41 30 2d 41 |#-4.move|m.l.A0-A|
|00000270| 31 2f 44 30 2d 44 32 2c | 20 2d 28 53 50 29 0d 0d |1/D0-D2,| -(SP)..|
|00000280| 3b 20 67 65 74 20 6b 65 | 79 20 63 6f 64 65 20 66 |; get ke|y code f|
|00000290| 72 6f 6d 20 73 74 61 63 | 6b 20 69 6e 74 6f 20 44 |rom stac|k into D|
|000002a0| 32 0d 3b 20 67 65 74 20 | 6d 6f 64 69 66 69 65 72 |2.; get |modifier|
|000002b0| 73 20 66 72 6f 6d 20 73 | 74 61 63 6b 20 69 6e 74 |s from s|tack int|
|000002c0| 6f 20 44 31 0d 0d 6d 6f | 76 65 2e 77 09 38 28 41 |o D1..mo|ve.w.8(A|
|000002d0| 36 29 2c 20 44 31 09 3b | 73 65 63 6f 6e 64 20 70 |6), D1.;|second p|
|000002e0| 61 72 61 6d 65 74 65 72 | 20 28 6d 6f 64 69 66 69 |arameter| (modifi|
|000002f0| 65 72 73 29 0d 6d 6f 76 | 65 2e 77 09 31 30 28 41 |ers).mov|e.w.10(A|
|00000300| 36 29 2c 20 44 32 09 3b | 66 69 72 73 74 20 70 61 |6), D2.;|first pa|
|00000310| 72 61 6d 65 74 65 72 20 | 28 6b 65 79 20 63 6f 64 |rameter |(key cod|
|00000320| 65 29 0d 0d 6d 6f 76 65 | 2e 77 09 23 39 2c 20 44 |e)..move|.w.#9, D|
|00000330| 30 09 09 3b 73 68 69 66 | 74 20 63 6f 75 6e 74 20 |0..;shif|t count |
|00000340| 66 6f 72 20 66 6c 61 67 | 73 0d 6c 73 72 09 44 30 |for flag|s.lsr.D0|
|00000350| 2c 44 31 09 09 3b 6d 6f | 76 65 20 62 69 74 73 20 |,D1..;mo|ve bits |
|00000360| 74 6f 20 6c 6f 77 65 72 | 20 62 79 74 65 0d 61 6e |to lower| byte.an|
|00000370| 64 69 09 23 37 2c 20 44 | 31 09 09 3b 6d 61 73 6b |di.#7, D|1..;mask|
|00000380| 20 33 20 62 69 74 73 20 | 74 6f 20 67 65 74 20 6d | 3 bits |to get m|
|00000390| 6f 64 69 66 79 20 69 6e | 20 44 31 0d 0d 63 6d 70 |odify in| D1..cmp|
|000003a0| 69 09 23 36 34 2c 20 44 | 32 09 09 3b 6b 65 79 63 |i.#64, D|2..;keyc|
|000003b0| 6f 64 65 20 3c 36 34 20 | 74 68 65 6e 20 6b 65 79 |ode <64 |then key|
|000003c0| 31 0d 42 47 45 09 6b 65 | 79 32 09 09 3b 3d 3e 36 |1.BGE.ke|y2..;=>6|
|000003d0| 34 20 74 68 65 6e 20 6b | 65 79 32 0d 0d 6b 65 79 |4 then k|ey2..key|
|000003e0| 31 3a 0d 63 6c 72 2e 6c | 09 44 30 0d 4c 45 41 09 |1:.clr.l|.D0.LEA.|
|000003f0| 73 68 6f 77 69 74 2c 20 | 41 30 09 3b 67 65 74 20 |showit, |A0.;get |
|00000400| 72 65 74 75 72 6e 20 61 | 64 64 72 65 73 73 0d 6d |return a|ddress.m|
|00000410| 6f 76 65 2e 6c 09 41 30 | 2c 20 2d 28 53 50 29 09 |ove.l.A0|, -(SP).|
|00000420| 3b 72 65 74 75 72 6e 20 | 61 64 64 72 65 73 73 20 |;return |address |
|00000430| 74 6f 20 73 74 61 63 6b | 0d 6d 6f 76 65 2e 6c 09 |to stack|.move.l.|
|00000440| 23 6b 65 79 31 74 72 61 | 6e 73 2c 20 41 30 09 3b |#key1tra|ns, A0.;|
|00000450| 67 6c 6f 62 61 6c 20 66 | 6f 72 20 70 6f 69 6e 74 |global f|or point|
|00000460| 65 72 20 74 6f 20 6b 65 | 79 31 74 72 61 6e 73 20 |er to ke|y1trans |
|00000470| 72 6f 6d 20 72 6f 75 74 | 69 6e 65 0d 6d 6f 76 65 |rom rout|ine.move|
|00000480| 2e 6c 09 28 41 30 29 2c | 20 41 30 09 3b 67 65 74 |.l.(A0),| A0.;get|
|00000490| 20 61 64 64 72 65 73 73 | 20 6f 66 20 6b 65 79 31 | address| of key1|
|000004a0| 74 72 61 6e 73 0d 6a 6d | 70 09 28 41 30 29 09 09 |trans.jm|p.(A0)..|
|000004b0| 3b 63 61 6c 6c 20 73 75 | 62 72 6f 75 74 69 6e 65 |;call su|broutine|
|000004c0| 0d 0d 6b 65 79 32 3a 0d | 73 75 62 69 09 23 36 34 |..key2:.|subi.#64|
|000004d0| 2c 20 44 32 09 09 3b 61 | 64 6a 75 73 74 20 6b 65 |, D2..;a|djust ke|
|000004e0| 79 20 63 6f 64 65 0d 63 | 6c 72 2e 6c 09 44 30 0d |y code.c|lr.l.D0.|
|000004f0| 4c 45 41 09 73 68 6f 77 | 69 74 2c 20 41 30 09 3b |LEA.show|it, A0.;|
|00000500| 67 65 74 20 72 65 74 75 | 72 6e 20 61 64 64 72 65 |get retu|rn addre|
|00000510| 73 73 0d 6d 6f 76 65 2e | 6c 09 41 30 2c 20 2d 28 |ss.move.|l.A0, -(|
|00000520| 53 50 29 09 3b 72 65 74 | 75 72 6e 20 61 64 64 72 |SP).;ret|urn addr|
|00000530| 65 73 73 20 74 6f 20 73 | 74 61 63 6b 0d 6d 6f 76 |ess to s|tack.mov|
|00000540| 65 2e 6c 09 23 6b 65 79 | 32 74 72 61 6e 73 2c 20 |e.l.#key|2trans, |
|00000550| 41 30 09 3b 67 6c 6f 62 | 61 6c 20 66 6f 72 20 70 |A0.;glob|al for p|
|00000560| 6f 69 6e 74 65 72 20 74 | 6f 20 6b 65 79 32 74 72 |ointer t|o key2tr|
|00000570| 61 6e 73 20 72 6f 6d 20 | 72 6f 75 74 69 6e 65 0d |ans rom |routine.|
|00000580| 6d 6f 76 65 2e 6c 09 28 | 41 30 29 2c 20 41 30 09 |move.l.(|A0), A0.|
|00000590| 3b 67 65 74 20 61 64 64 | 72 65 73 73 20 6f 66 20 |;get add|ress of |
|000005a0| 6b 65 79 31 74 72 61 6e | 73 0d 6a 6d 70 09 28 41 |key1tran|s.jmp.(A|
|000005b0| 30 29 09 09 3b 63 61 6c | 6c 20 73 75 62 72 6f 75 |0)..;cal|l subrou|
|000005c0| 74 69 6e 65 0d 0d 73 68 | 6f 77 69 74 3a 0d 0d 3b |tine..sh|owit:..;|
|000005d0| 20 72 65 74 75 72 6e 20 | 66 75 6e 63 74 69 6f 6e | return |function|
|000005e0| 20 72 65 73 75 6c 74 20 | 66 72 6f 6d 20 44 30 0d | result |from D0.|
|000005f0| 6d 6f 76 65 2e 77 09 44 | 30 2c 20 31 32 28 41 36 |move.w.D|0, 12(A6|
|00000600| 29 09 3b 70 61 73 73 20 | 62 61 63 6b 20 66 75 6e |).;pass |back fun|
|00000610| 63 74 69 6f 6e 20 72 65 | 73 75 6c 74 0d 0d 6d 6f |ction re|sult..mo|
|00000620| 76 65 6d 2e 6c 09 28 53 | 50 29 2b 2c 20 41 30 2d |vem.l.(S|P)+, A0-|
|00000630| 41 31 2f 44 30 2d 44 32 | 0d 75 6e 6c 6b 09 61 36 |A1/D0-D2|.unlk.a6|
|00000640| 0d 6d 6f 76 65 2e 6c 09 | 28 53 50 29 2b 2c 20 41 |.move.l.|(SP)+, A|
|00000650| 30 09 3b 67 65 74 20 72 | 65 74 75 72 6e 20 61 64 |0.;get r|eturn ad|
|00000660| 64 72 65 73 73 0d 61 64 | 64 71 2e 6c 09 23 34 2c |dress.ad|dq.l.#4,|
|00000670| 20 53 50 09 09 3b 72 65 | 6d 6f 76 65 20 70 61 73 | SP..;re|move pas|
|00000680| 73 65 64 20 70 61 72 61 | 6d 65 74 65 72 73 0d 4a |sed para|meters.J|
|00000690| 4d 50 20 28 41 30 29 0d | 0d 3b 20 2d 2d 2d 2d 2d |MP (A0).|.; -----|
|000006a0| 2d 2d 2d 2d 2d 2d 2d 20 | 20 20 45 4e 44 20 4f 46 |------- | END OF|
|000006b0| 20 50 52 4f 47 52 41 4d | 20 2d 2d 2d 2d 2d 2d 2d | PROGRAM| -------|
|000006c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 0d 00 00 00 00 00 |--------|-.......|
|000006d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000700| 00 00 01 00 00 00 01 16 | 00 00 00 16 00 00 00 46 |........|.......F|
|00000710| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000720| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000730| 0c 6b 65 79 74 72 61 6e | 73 2e 61 73 6d 6e 02 00 |.keytran|s.asmn..|
|00000740| 00 00 54 45 58 54 45 44 | 49 54 01 00 00 01 00 73 |..TEXTED|IT.....s|
|00000750| 00 00 54 45 58 54 45 44 | 49 54 01 00 00 01 00 73 |..TEXTED|IT.....s|
|00000760| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000770| 00 00 98 4a 85 97 00 00 | 06 4b 00 00 01 5c 00 00 |...J....|.K...\..|
|00000780| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000790| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000800| 00 00 00 0a 00 09 06 4d | 6f 6e 61 63 6f 52 00 00 |.......M|onacoR..|
|00000810| 00 04 00 06 00 08 00 00 | 01 00 00 00 01 16 00 00 |........|........|
|00000820| 00 16 00 00 00 46 00 00 | cc 24 03 ae 00 00 00 1c |.....F..|.$......|
|00000830| 00 46 00 01 45 46 4e 54 | 00 00 00 12 45 54 41 42 |.F..EFNT|....ETAB|
|00000840| 00 00 00 1e 03 eb ff ff | 00 00 00 00 00 01 6f 1c |........|......o.|
|00000850| 03 ec ff ff 00 00 00 0e | 00 01 6f 24 00 00 00 00 |........|..o$....|
|00000860| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000870| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+